<?php
	include_once '.././include/inc_session.php';	
	
	$_SESSION['FNO_nom_refext'] = isset($_GET['ref'])? $_GET['ref'] :'';
	
	$_SESSION['FPN_prenom_personne'] = '';
	$_SESSION['FNO_nom_personne']='';
	$_SESSION['FNO_date_naissance_personne']='';
	$_SESSION['type_personne'] = '';
	$_SESSION['type_ref'] = '';
	
	// construction de l’objet Template
	$oPageCreer = new Template(PATH_TEMPLATE.'recherche_critere.html');
	$_SESSION['FNO_num_contrat']='';
	
	$oContrat=new dataObject_contrat();
	$oPersonne= new dataObject_personne();
	$oReference = new dataObject_refExterne();
	
	$atypePersonne = dataObject_elementdico::elementdico_getListFromCode(dataObject_dictionnaire::_TYPE_PERSONNE);// FS25112010:$oPersonne->personne_getTypePersonne();
	
	$atypeReference = dataObject_elementdico::elementdico_getListFromCode(dataObject_dictionnaire::_TYPE_REF_EXTERNE);// FS25112010: $oreference->refExterne_getTypeRefext();
	
	if(isset($_POST['rechercher_personne']))
	{
		$bValide = true;
		//on controle le format de la date de naissance si elle est saisie
		if(isset($_POST['FNO_date_naissance_personne']) && $_POST['FNO_date_naissance_personne'] != '')
		{
			$sValeur = $_POST['FNO_date_naissance_personne'];
        	if(!datevalider($sValeur))
        		$bValide = $oForm->ajouterErreur(datenaissance_format);
        	elseif(!datevalide($sValeur))
        		$bValide = $oForm->ajouterErreur(datenaissance_incorrect);
		}
		if($bValide)
		{
			if(($_POST['FNO_nom_personne']!='')||($_POST['FPN_prenom_personne']!='')||($_POST['FNO_date_naissance_personne']!=''))
			{	
				$_SESSION['FNO_nom_personne'] = $_POST['FNO_nom_personne'];
				$_SESSION['FPN_prenom_personne'] = $_POST['FPN_prenom_personne'];
				$_SESSION['FNO_date_naissance_personne'] = $_POST['FNO_date_naissance_personne'];
				$_SESSION['type_personne'] = $_POST['type_personne'];
				
				$aIdPersonne = $oPersonne->personne_search($_POST['type_personne'], $_POST['FNO_nom_personne'], $_POST['FPN_prenom_personne'], $_POST['FNO_date_naissance_personne'] );
				if(!empty($aIdPersonne))
					header('location:tpl_list_personne.php');
				else $oForm->ajouterErreur(search_no_personne);
			}
			else 
			{
				$oForm->ajouterErreur(search_personne_vide);
				
			}
		}
	}
	
	else if(isset($_POST['rechercher_contrat']))
	{
		if($_POST['FNO_num_contrat']!='')
		{
			$_SESSION['FNO_num_contrat']=$_POST['FNO_num_contrat'];
			$ocontratexiste= $oContrat->contrat_searchNumero($_POST['FNO_num_contrat']);
			if($ocontratexiste==false)
			{
				$oForm->ajouterErreur(contrat_inexistant_old);
			}
			else
			{
			header('location:list_inter_contrat.php');
			}
		}
		else
		{
			$oForm->ajouterErreur(fiche_synth_numcontrat_vide);
		}
	}
	else if(isset($_POST['rechercher_reference']))
	{
		if($_POST['FNO_nom_refext']!="")
		{
			if($_POST['type_ref']!="")
			{
				$_SESSION['FNO_nom_refext']=$_POST['FNO_nom_refext'];
				$_SESSION['type_ref']=$_POST['type_ref'];
				
				$aIdRef = $oReference->refexterne_search($_POST['type_ref'], $_POST['FNO_nom_refext']);
				if(!empty($aIdRef))
					header('location:list_reference.php');
				else $oForm->ajouterErreur(search_no_refexterne);
				
			}
			else
			{
				echo "Veuillez choisir le type de référence SVP";
			}
		}
		else
		{
			$oForm->ajouterErreur(search_reference_vide);
		}
	}
	if($_SESSION['FNO_nom_refext']=='') $oForm->ajouterErreur("");
	
	if(isset($_GET['retour']) && (intval($_GET['retour'])==1))
	{
		unset($_SESSION['FNO_nom_refext']); 
		unset($_SESSION['FPN_prenom_personne']);
		unset($_SESSION['FNO_nom_personne']);
		unset($_SESSION['FNO_date_naissance_personne']);
		unset($_SESSION['type_personne']);
		unset($_SESSION['type_ref']);
		unset($_SESSION['FNO_num_contrat']);
		header("Location:../menu.php");
	}
	//remplacement simple
	$oPageCreer->replace('nom_module', $oBloc->_MENU_NOM);
	$oPageCreer->replace('nom_fonction', $oFonction->_MENU_AFFICHE);
	$oPageCreer->replace('nom_element',"Critères de recherche");

	$oPageCreer->replace('edit_action', $sEditFormAction);

	
	// remplacement par boucle pour le contenu du formulaire
	$NOM = isset($_SESSION['FNO_nom_personne'])? $_SESSION['FNO_nom_personne'] : $_POST['FNO_nom_personne'];
	$PRENOM = isset($_SESSION['FPN_prenom_personne'])? $_SESSION['FPN_prenom_personne'] : $_POST['FPN_prenom_personne'];
	$DATE_NAIS = isset($_SESSION['FNO_date_naissance_personne'])? $_SESSION['FNO_date_naissance_personne'] : $_POST['FNO_date_naissance_personne'];
	$TYPE_PERSONNE = isset($_SESSION['type_personne'])? $_SESSION['type_personne'] : $_POST['type_personne'];
	$NOM_REFEXT = isset($_SESSION['FNO_nom_refext'])? $_SESSION['FNO_nom_refext'] : $_POST['FNO_nom_refext'];
	$TYPE_REFEXT = isset($_SESSION['type_ref'])? $_SESSION['type_ref'] : $_POST['type_ref'];
	$CONTRAT = isset($_SESSION['FNO_num_contrat'])? $_SESSION['FNO_num_contrat'] : $_POST['FNO_num_contrat'];
	
	// construction du tableau de valeurs
	$asInputs1 = array(array('label_input'=>'N° CONTRAT','input_name'=>'FNO_num_contrat', 'input_value'=> $CONTRAT, 'size'=>'30', 'maxlength'=>'20', 'class'=>'resize_2') 
   					   );
   	$asInputs2 = array(
   					  array('label_select_1'=>'TYPE PERSONNE','select_name_1'=>'type_personne'),
   					  array('label_input_2'=>'NOM','input_name_2'=>'FNO_nom_personne', 'input_value_2'=> $NOM, 'size'=>'36', 'class'=>'resizeall', 'maxlength'=>'30'), 
   					  array('label_input_2'=>'PRENOM','input_name_2'=>'FPN_prenom_personne', 'input_value_2'=> $PRENOM, 'size'=>'36', 'class'=>'resizeall', 'maxlength'=>'30'), 
   					  array('label_input_2'=>'DATE NAISSANCE','input_name_2'=>'FNO_date_naissance_personne', 'input_value_2'=> $DATE_NAIS, 'size'=>'20', 'class'=>'resizeall', 'maxlength'=>'10'), 
   					    );	
    $asInputs3 = array( array('label_select_3'=>'TYPE REFERENCE','select_name_3'=>'type_ref'),
   					    array('label_input_3'=>'REFERENCE EXTERNE','input_name_3'=>'FNO_nom_refext','input_value_3'=>$NOM_REFEXT, 'size3'=>'36', 'class3'=>'resizeall', 'maxlength3'=>'30') 
   					   );
     $aOptions1 = array();	
     $aOptions2 = array();
     
    foreach ($atypeReference as $iKey => $aRow)
   	{
   		   		
   		$aOpt =array('option_value_3'=>$aRow['Code_element'],'option_name_3'=>$aRow['Nom_element']);
   		if($TYPE_REFEXT== $aRow['Code_element'])
        	$aOpt = array_merge($aOpt, array("selected_3"=> true));
        $aOptions2[$iKey] = $aOpt;   
   	} 
   	
   	 foreach ($atypePersonne as $iKey => $aPersonne)
   	{
   		//$sType_personne = dataObject_elementdico::elementdico_getNomFromCode($aPersonne["Type_personne"], dataObject_dictionnaire::_TYPE_PERSONNE);
			
   		//$aOpt =array('option_value_1'=>$aPersonne['Type_personne'],'option_name_1'=>$sType_personne);
   		$aOpt = array('option_value_1'=> $aPersonne['Code_element'],'option_name_1'=> $aPersonne['Nom_element']);
   		if($TYPE_PERSONNE== $aPersonne['Code_element'])
   			$aOpt = array_merge($aOpt, array("selected_1"=> true));
        $aOptions1[$iKey] = $aOpt;   
   	} 
   
	$oPageCreer->iterateReplace('options_1', $aOptions1);
	$oPageCreer->iterateReplace('options_3', $aOptions2);
  	$oPageCreer->iterateReplace('champ_input', $asInputs1);
	$oPageCreer->iterateReplace('champ_input_2', $asInputs2);
	$oPageCreer->iterateReplace('champ_input_3', $asInputs3);
	
	$oPageCreer->replace('url_annuler','tpl_critere_rec.php?');
		
	
	//affichage message derreur
	$oPageCreer->iterateReplace('messages', $oForm->getValidMessage());
	
	
	//Conditions plus complexes
	$oPageCreer->replace('bAnnuler_msg', true);
	$oPageCreer->replace('url_retour_liste', "index.php?retour=1");
	
	/***** affichage de la page ainsi parametrée *****/
	echo $oPageCreer->toString();
	
	include_once '.././include/inc_pied_page.php';
?>